# 上下文压缩 contextual_compression


![LangChain](https://pica.zhimg.com/50/v2-56e8bbb52aa271012541c1fe1ceb11a2_r.gif 'LangChain中文网')


在检索中的一个挑战是，通常您不知道将数据导入系统时文档存储系统将面临的具体查询。这意味着与查询相关的最重要信息可能埋藏在具有大量无关文本的文档中。将完整文档通过应用程序传递可能导致更昂贵的 LLM 调用和较差的响应。

上下文压缩旨在解决这个问题。其思想很简单：不是立即返回检索到的文档，而是使用给定查询的上下文对其进行压缩，以便仅返回相关信息。这里的“压缩”既指压缩单个文档的内容，也指批量过滤文档。

要使用上下文压缩检索器，您需要：
- 一个基础检索器
- 一个文档压缩器

上下文压缩检索器将查询传递给基础检索器，获取初始文档并通过文档压缩器进行处理。文档压缩器接受一个文档列表，并通过减少文档内容或完全丢弃文档来缩短列表。

![](https://drive.google.com/uc?id=1CtNgWODXZudxAWSRiWgSGEoTNrUFT98v)

## 入门

import Example from "@snippets/modules/data_connection/retrievers/contextual_compression/get_started.mdx"

<Example/>
